package com.ruoyi.develop.finance.financeAr.service;

import java.util.List;

import com.ruoyi.develop.finance.financeAp.domain.FinanceAp;
import com.ruoyi.develop.finance.financeAr.domain.FinanceAr;
import com.ruoyi.develop.goodsInvoiceDetail.domain.GoodsInvoiceDetail;
import com.ruoyi.develop.lvYifahuo.domain.LvYifahuo;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 应收账款Service接口
 * @author lmm
 * @date 2025-07-30
 */
public interface IFinanceArService {
    /**
     * 查询应收账款
     * @param id 应收账款主键
     * @return 应收账款
     */
    public FinanceAr selectById(String id);

    /**
     * 查询应收账款列表
     * @param entity 应收账款
     * @return 应收账款集合
     */
    public List<FinanceAr> selectList(FinanceAr entity);

    /**
     * 新增应收账款
     * @param entity 应收账款
     * @return 结果
     */
    public int insert(FinanceAr entity);

    /**
     * 修改应收账款
     * @param entity 应收账款
     * @return 结果
     */
    public int update(FinanceAr entity);

    /**
     * 批量删除应收账款
     * @param ids 需要删除的应收账款主键集合
     * @return 结果
     */
    public int deleteByIds(String[] ids);

    /**
     * 删除应收账款信息
     * @param id 应收账款主键
     * @return 结果
     */
    public int deleteById(String id);

    void addBySend(LvYifahuo lvYifahuo);

    void exportData(HttpServletRequest request, HttpServletResponse response, FinanceAr entity);

    void addByBackMoney(GoodsInvoiceDetail entity);

    void addByBackMoneyCancel(GoodsInvoiceDetail invoiceDetail);
}
